home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ADA Programming Guide
/
ADA Programming Guide.iso
/
adatutor
/
c01crs.sid
< prev
next >
Wrap
Text File
|
1996-01-30
|
13KB
|
235 lines
--= SID = SIMTEL20 Ada Software Repository Item Description File = SID =--
-- UNIT NAME : SE, OOD, and OOP Courseware
-- VERSION : 1.0
-- REVIEW CODE : NR
-- DDN ADDRESS : hcarter@vlsisun.ece.uc.edu, rconn@vlsisun.ece.uc.edu
-- AUTHOR : Harold Carter, Richard Conn
-- : Department of Electrical and Computer Engineering
-- : University of Cincinnati
-- : Mail Location 30
-- : Cincinnati, Ohio 45221-0030
-- : 513/556-4781 (Harold Carter, work)
-- RIGHTS : PUBLIC DOMAIN
-- COPYRIGHT : None
-- DATE CREATED : August, 1992
-- DATE RELEASED : 6 May 1993
-- DATE LAST UPDATED : 6 May 1993
-- LOCATION : ASR and mirror sites
-- LOCATION : ASSET
-- ENVIRONMENT : DEC VAX/VMS, DEC Ada
-- ENVIRONMENT : Sun SunOS 4.x, Alsys Ada
-- ENVIRONMENT : Sun SunOS 4.x, Sun/Verdix Ada
-- ENVIROMENT : PC, MSDOS 3.3 or greater, Alsys Ada
-- LIMITATIONS : None
--= CLASSIFICATION ===============================================--
-- CATEGORY LEVEL 1 : COURSEWARE
-- CATEGORY LEVEL 2 : SOFTWARE ENGINEERING, OOD, OOP
-- CATEGORY LEVEL 3 : UNIVERSITY OF CINCINNATI
-- CATEGORY LEVEL 4 :
-- KEYWORD :
-- INDEX : Software Engineering with Ada Course
-- INDEX : Software Engineering Lab Course
-- INDEX : Object-Oriented Design Course
-- INDEX : Object-Oriented Programming Course
-- INDEX : Ada
-- INDEX : C++
-- DEPENDENCIES : None
-- SEE ALSO : MANIFEST.TXT in C01RDME.ZIP
-- SHORT DESCRIPTION : Courseware on Software Engineering, OOD, OOP
--= FILE LISTING ===============================================--
-- FILE SPECS : PD:<MSDOS.ADA>C01*.ZIP
-- DIRECTORY DISPLAY :
-- Directory PD:<MSDOS.ADA>
-- File Name Bytes Lines
-- --------------- -------- ------
-- C01LAB1.ZIP 451682 Binary
-- C01LAB2.ZIP 217031 Binary
-- C01LAB3.ZIP 1310460 Binary
-- C01LAB4.ZIP 780422 Binary
-- C01LAB5.ZIP 230581 Binary
-- C01LAB6.ZIP 20017 Binary
-- C01OOD.ZIP 343619 Binary
-- C01OOP.ZIP 337197 Binary
-- C01PLAB.ZIP 217400 Binary
-- C01POOD.ZIP 597264 Binary
-- C01POOP.ZIP 672600 Binary
-- C01PSE1.ZIP 990680 Binary
-- C01PSE2.ZIP 422295 Binary
-- C01RDME.ZIP 26079 Binary
-- C01SE.ZIP 620163 Binary
-- =============== ======== ======
-- 15 Files 7237490 0
--= ABSTRACT ===============================================--
-- INTRODUCTION
--
-- This courseware consists of three courses: Software Engineering with Ada
-- (including a Lab), Object-Oriented Design, and Object-Oriented
-- Programming with Ada and C++. These courses are designed to be taught
-- as a sequence: Software Engineering with Ada, Object-Oriented Design,
-- and Object-Oriented Programming with Ada and C++.
--
-- See the file MANIFEST.TXT in C01RDME.ZIP for a detailed description of
-- all documents and code provided with each course. See the C01RDME.ZIP
-- file for other useful introductory material as well.
--
-- Texts for these courses are:
-- Software Engineering: "Software Engineering: A Practitioner's Approach,
-- 3rd Edition" by Roger S. Pressman, McGraw-Hill, 1992, ISBN 0-07-050814-3.
-- Software Engineering (optional): "Rendezvous with Ada: A Programmer's
-- Introduction" by David J. Naiditch, Wiley, 1989, ISBN 0-471-61654-0.
-- Object-Oriented Design and Programming: "Object-Oriented Design with
-- Applications" by Grady Booch, Benjamin/Cummings, 1991, ISBN 0-8053-0091-0.
--
-- All documents are provided in two formats: the original word processor
-- format (to facilitate editing and tailoring as desired) and Postscript.
-- The following tools are required to edit all the documents:
-- 1. Microsoft Word for Windows 2.0
-- 2. Microsoft Powerpoint 3.0
-- 3. Interleaf 5.0
--
-- All courseware (documents, code, etc) is provided in *.ZIP files. These
-- files can be unpacked (each in its own directory) by using PkWare's
-- PKZIP/PKUNZIP 1.1 or equivalent (Info-ZIP's zip and unzip also work).
--
-- A validated Ada83 compiler is required to compile the Ada source code.
-- We have successfully compiled and run/used all provided Ada source code
-- on a Sun using Sun Ada/Verdix Ada, on a Sun using Alsys Ada, on a PC
-- using Alsys Ada, and on a DEC VAX/VMS using DEC Ada. We suspect that
-- the code should be transportable to other validated Ada compilers as
-- well.
--
-- COURSE 1. SOFTWARE ENGINEERING WITH ADA
--
-- Software Engineering with Ada (which includes a Lab) is an introductory
-- course in software engineering. It covers the following principal
-- topics: an introduction to the concept of software engineering, software
-- project planning, software requirements analysis, software design and
-- software design methodologies, coding, testing, and delivery and
-- maintenance. There is a heavy emphasis in the Ada programming language
-- and how it supports various aspects of the development of an engineered
-- software system.
--
-- The laboratory portion of the course reinforces the lecture by making
-- the students, as 2-3 person teams, prepare a software development plan,
-- a software requriements specification, a software design document, a
-- software user's manual, and IV&V reports. Templates, based on
-- DoD-STD-2167A DIDs, are provided to facilitate the creation of these
-- documents.
--
-- Five student projects are included, and three of these projects are
-- oriented to making the students design software which interacts with a
-- system simulator. Three working system simulators, written in Ada, are
-- included: a spacecraft monitoring simulation, an automobile simulation,
-- and a buoy simulation.
--
-- The student projects are supported by a reusable components library,
-- called CS Parts, as well as the three simulators. CS Parts contains a
-- large number of basic components, such as a math package, linked list
-- packages, string manipulation packages, and more advanced components,
-- such as a VT100 interface and a report generator. On the average,
-- students find that approximately 85% of the code in their problem
-- solutions is reused from CS Parts. Such a high level of reuse greatly
-- speeds project development, making it practical for a student team to
-- generate all the required documents and working code in a 10-week lab
-- period.
--
-- Since this is a software engineering course, it is not desired to take
-- much time to teach the Ada language itself. Three aids are provided to
-- assist the students not proficient in Ada to learn it outside of class:
-- an online Ada Language Reference Manual Reader, an interactive Ada
-- language tutorial, and a workbook on the Ada language which includes 24
-- solved problems.
--
-- An online Ada Language Reference Manual Reader, written in Ada, is
-- included as a working program, complete with a detailed Software
-- Requirements Specification, Software User's Manual, and Software Design
-- Document. These documents provide models for the students to follow in
-- the construction of the documents for their projects as well as food for
-- discussion in class. Additionally, the online Ada Language Reference
-- Manual Reader can be used by the students, thereby eliminating the need
-- for them to purchase copies of this document. A ready-to-run executable
-- of this reader for the IBM PC and its clones is included as well as the
-- source code in Ada.
--
-- An interactive tutorial on the Ada language, written in Ada, is
-- included. This is a shareware product and funding should be provided to
-- the author should the instructor decide to use it for his class.
--
-- A workbook on the Ada language, which includes 24 short problems and
-- their solutions, is included.
--
-- COURSE 2. OBJECT-ORIENTED DESIGN
--
-- The Object-Oriented Design course covers the following topics: a review
-- of key concepts from Software Engineering, graphical notation used as
-- a basis of communication, the object model (with emphasis on applying
-- the Spiral Model of software development), and object classification.
--
-- This course is a lecture-only course. Students are required to create
-- object-oriented requirements and design documents based in part on
-- DoD-STD-2167A.
--
-- COURSE 3. OBJECT-ORIENTED PROGRAMMING
--
-- The Object-Oriented Programming course covers the following topics:
-- a review of key topics in Software Engineering and Object-Oriented
-- Design, graphical notation, the object model, and an overview of the
-- Ada and C++ languages, concentrating on the features of each.
--
-- This course is a lecture/lab course, and the lab consists of a single
-- project to be solved by several 2-5 person student teams: create a
-- reader for the Ada Language Reference Manual using the Spiral Model of
-- software development and object-oriented techniques. Students are
-- required to create an object-oriented software requirements
-- specification and software design document as well as write the code of
-- the solution. The teams are divided into two groups: one uses Ada as an
-- implementation language during the first iteration of the spiral and the
-- other uses C++. Half way through the class, the teams who developed in
-- Ada inherit the code and documents created by a C++ team and the teams
-- who developed in C++ inherit the code and documents created by an Ada
-- team. A long discussion period is set aside at the end of the class to
-- discuss lessons learned from inheriting code from others in each
-- language and to compare the students' designs with the design of the Ada
-- LRM Reader provided with the Software Engineering class.
--
-- An Ada workbook and a C++ workbook are included as material for this
-- course. Material from the Software Engineering course may be reused for
-- this course as well.
--
-- CREDITS
--
-- Development of the Software Engineering course was funded by the Ada
-- Joint Program Office through DARPA/CMO 91-18 (Curriculum Development in
-- Software Engineering and Ada) as announced in the 16 July 1991 issue
-- of the Commerce Business Daily. We wish to thank the AJPO and DARPA/CMO
-- for their support and interest in this project. Work was done jointly
-- by Professor Harold Carter and Professor Richard Conn.
--
-- Development of the Object-Oriented Design and Object-Oriented Programming
-- courses was funded by the University of Cincinnati, Department of Electrical
-- and Computer Engineering. Work was done by Professor Richard Conn.
--
-- We also wish to thank the manufacturers who worked with us to bring
-- their products into the university environment for our use and the use
-- of our students at a very reasonable cost. Those manufacturers are
-- Microsoft, Interleaf, PkWare, Sun, Verdix, Alsys, DEC, and John Herro.
--= REVISION HISTORY ===============================================--
-- DATE VERSION AUTHOR HISTORY
-- 05/06/93 1.0 Harold Carter, Richard Conn Initial Release
--= RELEASE NOTICE ===============================================--
-- This software is released to the Public Domain (note:
-- software released to the Public Domain is not subject
-- to copyright protection).
-- Restrictions on use or distribution: NONE; Distribution Unlimited
--= DISCLAIMER ===============================================--
-- This courseware, software, and documentation are provided "AS IS"
-- without any expressed or implied warranties whatsoever. No warranties
-- as to performance, merchantability, or fitness for a particular
-- purpose exist.
-- The user is advised to test the software thoroughly before
-- relying on it. The user must assume the entire risk and liability of
-- using this software. In no event shall any person or organization of
-- people be held responsible for any direct, indirect, consequential or
-- inconsequential damages or lost profits.
--======================================================================--